There exist communication systems with a communication device which connects a certain control device with one or more communication terminals, and controls the one or more communication terminals based on control information from the control device.
For example, FIG. 9 shows a structure of a communication system including a communication device. A communication device 101 in a communication system 100 connects with a user control device 102, a communication network 103, an audio processing device 104 such as a telephone set, a data processing device 105 such as a router, and a video processing device 106 through a user interface 102a, an optical communication interface 103a, an audio interface 104a, a data interface 105a, and a video interface 106a, respectively. The optical communication interface 103a connects with the communication network 103 via an optical fiber LL to implement high-speed communication. A port 104p of the audio interface 104a connects with the audio processing device 104 through a two-wire telephone line to implement transmission and reception of audio information. A port 105p of the data interface 105a connects with the data processing device 105 such as a LAN router, for instance, through a twisted pair cable (UTP-5) of the 10 BASE standard (IEEE802.3), to implement transmission and reception of data. A port 106p of the video interface 106a connects with the video processing device 106 via a coaxial cable, to implement transmission and reception of video information. The user control device 102 connects with the user interface 102a via a cable corresponding to the user interface 102a, i.e., a serial transfer cable such as an RS232C interface cable, for instance, to provide control information from the user control device 102 to the communication device 101 as an input.
The communication device 101 contains a communication protocol engine 107 which has a communication protocol to multiplex and demultiplex information such as audio, data, and video for the communication network 103. This communication protocol converts analog telephone signals into digital signals, or converts digital signals into analog telephone signals. This conversion processing includes, for instance, ring indication, off hook detection, dialing, and audio digitalization. This communication protocol also converts analog video signals into digital video signals, or converts digital video signals into analog video signals. Moreover, it multiplexes and sends information received from the audio processing device 104, the data processing device 105, and the video processing device 106 to the optical fiber LL. Conversely, it demultiplexes information received from the optical fiber LL. It sends information through the optical fiber LL to the communication network 103, and receives information from the communication network 103 through the optical fiber LL.
The user control device 102′ sends control information to the communication protocol engine through the user interface 102a, and controls communication among the communication network 103, the audio processing device 104, the data processing device 105, and the video processing device 106. For example, it can control the activation or deactivation of the optical communication interface 103a, the audio interface 104a, the data interface 105a, and the video interface 106a, the loopback processing of all interfaces 104a to 106a, and setting of bandwidth used for audio, data, and video on the optical fiber LL.
More concretely, as described in FIG. 10, contents of registers RR in the user interface 102a correspond to communication protocol modules 107a to 107d in the communication protocol engine 107. Control information FA which controls the activation or deactivation of the optical communication interface 103a is stored in a register RR0 corresponding to an address BASE+0 viewed from the user control device's 102 side. The communication protocol module 107a always reads control information stored in the register RR0, and based on this information it controls activation or deactivation of the optical communication interface 103a. Therefore, the control information FA is always stored in the register RR0; the user control device 102 sends the control information FA by designating the address BASE+0 corresponding to the register RR0; the communication protocol module 107a acquires the control information FA from the register RR0. Similarly, control information PA which controls the activation or deactivation of each of the interfaces 104a to 106a is always stored in a register RR1; the user control device 102 stores the control information PA by designating an address BASE+1 corresponding to the register RR1; the communication protocol module 107b acquires the control information PA from the register RR1 and controls the activation or deactivation of each of interfaces 104a to 106a. Moreover, control information PL for loopback processing of each of the interfaces 104a to 106a, control information AB for audio bandwidth, control information DB for data bandwidth, and control information VB for video bandwidth are always stored in registers RR2 to RR5, respectively; the user control device 102 stores control information PL, AB, DB and VB by designating addresses BASE+2 to BASE+5 corresponding to the registers RR2 to RR5; the communication protocol module 107c acquires the control information PL from the register RR2 and controls the loopback processing; the communication protocol module 107d acquires the control information AB, DB and VB from the registers RR3 to RR5 and controls the set-up processing of bandwidth used for audio, data and video. This communication protocol 107d corresponds to three registers RR3 to RR5, because the bandwidth set-up cannot fit into one register as a unit of information containable by each register RR is fixed. However, the control information stored in the registers RR3 to RR5 are fixed.
In the above mentioned conventional communication system 100, since all control information is stored in the fixed space of registers RR, if the communication protocol is modified, additional registers which store control information for this modification need to be assigned and due to this addition of registers, in some cases the position of the registers already assigned for the storage of control information needs to be changed.
If the positions of these existing registers are changed, the user control device 102 needs to change register-position indicating addresses for all control information that it sends, thus the user control device 102's address space for accessing control information will have to be modified which requires a complicated operation and causes problems.
Moreover, in the implementation of communication protocol (FIG. 10), since the position of the registers which acquire control information is changed, the position of registers for the implementation of the existing communication protocol also has to be changed. Especially, when the communication protocol is complicated, a lot of time needs to be spent for such modifications, a lot of time and labor are also required for debugging since it is difficult to organize the relative positions of registers, which sacrifices time and labor required for the implementation of the communication protocol and causes problems.
For example, FIG. 11 illustrates the main structure of a communication device which is formed by adding two communication functions (implemented by 107e and 107f) to the structure of the communication device described in FIG. 10. The block 107e added in FIG. 11 is a block for selection processing of the audio coding algorithm using control information AC. The block 107f is a block for compression processing of data using control information DM. In this case, since the selection of audio coding algorithm deals with audio data, the control information AC should be placed in a register close to the control information AB which sets up audio bandwidth; and since the compression of data deals with data, the control information DM should be placed in a register close to the control information DB which sets up data bandwidth. Therefore, the control information AC and the control information DM are inserted into the register RR4 and the register RR6 respectively. As a result, the control information DB which was placed in the register RR4 is moved to the register RR5, and the control information VB which was placed in the register RR5 is moved to the register RR7. Thus due to the changes in registers the control device 102's addresses also need to be modified. Moreover, among the already set up blocks 107a to 107d, 107d need to be modified; the register RR4 shifted to the register RR5, and the register RR5 shifted to the register RR7. Thus changes to the communication protocol triggers the following major modifications: modifications to the positions of the registers, modifications to the user control device 102's addresses, and modifications to the routing between the other implementation blocks and the registers.
Moreover, when changes to the communication protocol are implemented, mistaken routing between the implementation blocks and the registers causes the implementation blocks to acquire irrelevant control information, thus causing malfunction and causes big problems.
On the other hand, due to rapid technological advances recently, the development cycle of communication devices has shortened, and the design modification cycle has also shortened, there is a continuous demand for a reduction in time and labor spent on design changes.